package adke.gui.panels;

import adke.listeners.PlayerListener;
import adke.listeners.PowerupListener;
import adke.managers.GamePowerupManager;
import adke.models.Player;
import adke.models.powerups.AbilityPowerup;
import adke.models.powerups.Powerup;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import javax.swing.JLabel;
import javax.swing.JPanel;

// dit is een aparte klasse omdat we hier mogelijk nog dingen mee willen/kunnen/gaan doen

public class ScorePanel extends JPanel implements PowerupListener, PlayerListener
{
    private JLabel label;
    private Player player;
    
    // TODO cijfers custom tekenen
    
    public ScorePanel(Player player)
    {
        this.player = player;
        setBackground(Color.black);
        setLayout(new GridLayout());
        label = new JLabel();
        
        //
        label.setForeground(player.getColor());
        label.setFont(label.getFont().deriveFont(40f));
        //label.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 40));
        
        update();
        
        add(label);
        
        GamePowerupManager.addPowerupListener(this);
    }
    
    public void update()
    {
        label.setText("" + player.getScore());
    }

    // als mensen powerups hebben moet er een klein icoontje bijkomen
    public void powerupActivated(AbilityPowerup powerup)
    {
    }

    public void powerupDeactivated(AbilityPowerup powerup)
    {
    }

    public void powerupDropped(Powerup powerup)
    {
    }

    public void powerupPickedUp(Powerup powerup)
    {
    }

    // als iemand dood is moet er een icoon bij staan dat dat aangeeft
    public void playerDied(Player deadPlayer)
    {
    }

    public void playerKilledPlayer(Player killer, Player victim)
    {
    }
}
